package jdbc;

import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;


/**
 * 模拟用户登录
 */
public class LoginDemo {
    public static void main(String[] args) {
        // 程序启动，要求在控制台顺序输入用户名和密码
        UserInfo userInfo = InputUtil.getInputObject(new UserInfo(), "登录ing: ","登录");

        // 使用用户名和密码作为过滤条件查询userinfo表中是否存在该记录
        try (
            Connection conn = DBUtil.getConnection()
        ){
            Statement sta = conn.createStatement();
            // sql语句拼接小技巧: "SELECT COUNT(*) count FROM userinfo WHERE username='' AND password='';"
            // 在''中间/想要拼接数据的位置加上"",""中间加上++，++中间加上获取的数据即可
            String sql = "SELECT username,password " +
                    "FROM userinfo " +
                    "WHERE username='"+userInfo.getUsername()+"'" +
                    " AND password='"+userInfo.getPassword()+"';";
            ResultSet rs = sta.executeQuery(sql);

            // 如果存在提示登录成功，否则提示登录失败
            if(rs.next()){
                System.out.println("登录成功");
            }else{
                System.out.println("登录失败");
            }
        } catch (Exception e) {
            e.printStackTrace();
        }

    }
}
